home *** CD-ROM | disk | FTP | other *** search
/ Light ROM 1 / LIGHT-ROM 1 (Amiga Library Services)(1994).iso / ffdisks / d875.lha / AZap / AZapEnglish.doc < prev    next >
Text File  |  1993-04-24  |  17KB  |  441 lines

  1.  
  2.  
  3.                 AZap - User's Manual
  4.  
  5.  
  6.  
  7.  
  8.  
  9. AboutThisDoc
  10.  
  11.       This manual describes release 2.04 of the utility AZap. This program
  12.   is (c)1992-1993 by Denis GOUNELLE, any commercial usage or  selling  without
  13.   author's written authorization is  strictly  forbidden.  You  can  copy  and
  14.   spread this program at the following conditions:
  15.  
  16.     - all the files must be provided
  17.     - none of the file must have been modified
  18.     - you don't charge more than $6 for copy fee
  19.  
  20.       In spite of several tests, no warranty is made that there's no error
  21.   in AZap. YOU USE THIS PROGRAM AT YOUR OWN RISKS.  In    no  event  will  I  be
  22.   liable for any damage, direct or indirect, resulting of the use of AZap.
  23.  
  24. Introduction
  25.  
  26.       AZap is a "new generation" binary editor able to edit files,  memory
  27.   or devices like hard disks. It can open several windows at  the  same  time,
  28.   and while this program cannot be considered as a tool to help you to recover
  29.   a disk, it has a lot of useful functions (print block,  fill  block,  search
  30.   string, etc...).
  31.  
  32.                     CAUTION:
  33.  
  34.       It is absolutly forbidden to use this program  to  modify  a
  35.       copyright notice, or any other illegal usage.  Unexperienced
  36.       users should be aware that this program  may    destroy  their
  37.       programs, or cause severe data loss. 
  38.  
  39.       Suggestions and/or criticisms will be always welcome. Don't hesitate
  40.   to write me at the following address:
  41.  
  42.                    M. GOUNELLE Denis
  43.                     Boite 71
  44.                   6, rue des cailloux
  45.                  92110 CLICHY - FRANCE
  46.  
  47.       You can also send a message to  the  following  Internet  address  :
  48.   gounelle@alphanet.ch. Note that this mailbox is not  mine,  so  please  send
  49.   only short messages. As I don't have direct access to  the  messages,  don't
  50.   expect an answer before a dozen of days.
  51.       Thanks to Pierre ARDICHVILI and Jean-Yves PROUX for beta-testing and
  52.   suggestions.
  53.  
  54. Installation
  55.  
  56.       This program requires "reqtools.library" (version 2.0c or higher) to
  57.   run,    so  you  must  copy  it  in  your  "LIBS:"   directory   before.   The
  58.   "reqtools.library" is (c)1990-1993 by Nico FRANCOIS.
  59.       AZap is now localized, so it    can  adapt  itself  to    your  favorite
  60.   language. All you have to do is to copy  the    good  catalog  file  into  the
  61.   directory corresponding to your  language.  For  exemple,  if  your  default
  62.   language   is    french,    copy    the    "français.catalog"    into    the
  63.   "SYS:Locale/Catalogs/Français" directory, under the name "azap.catalog."
  64.  
  65.       The german catalogue was translated by Stefan SALEWSKI.
  66.  
  67. Running_from_CLI
  68.  
  69.       This program detach itself from CLI window. It accepts the following
  70.   arguments:
  71.  
  72.       WBENCH
  73.       Use Workbench screen instead of custom screen.
  74.  
  75.       LACE
  76.       Use an interlaced custom screen. This option is ignored  if  the
  77.       WBENCH option is specified too.
  78.  
  79.       FONT name
  80.       Use the specified font instead of internal 6x9 font. "name" must
  81.       be given as <font name><Y size>, like "courier9". AZap will  use
  82.       this font only if it isn't proportionnal and  if  it  isn't  too
  83.       large to display a 512 bytes block.
  84.  
  85.       MEMORY
  86.       Open a window to edit memory.
  87.  
  88.       DEVICE name
  89.       Open a window to edit specified device. Don't forget  the  colon
  90.       (":") at the end of the name.
  91.  
  92.   Any other argument is supposed to be the name of a file  to  edit.  You  can
  93.   specify as many names as you want, but only the first eight will be used. Of
  94.   course, you can mix file names, MEMORY  and  DEVICE  options.  Last,    if  no
  95.   argument is specified, a file requester appears (see "The_Project_menu")  so
  96.   you can select the file to edit.
  97.  
  98. Running_from_Workbench
  99.  
  100.       You can specify the following options in the "TOOL  TYPES"  of  AZap
  101.   icon:
  102.  
  103.       OPTIONS=WBENCH or OPTIONS=LACE
  104.       See  the   description   of    WBENCH     and   LACE   options    in
  105.       "Running_from_CLI" section.
  106.  
  107.       FONT=name
  108.       See above the description of FONT option  in    "Running_from_CLI"
  109.       section
  110.  
  111.   A file requester will appear (see "The_Project_menu") so you can select  the
  112.   file to edit.
  113.  
  114. The_edit_window
  115.  
  116.       The  left  part  of  the  display  shows  the  block     contents   in
  117.   hexadecimal, by sets of 4 bytes. The right part shows the  same  information
  118.   but as characters.  Bytes  corresponding  to    non-printable  characters  are
  119.   replaced by a point (".").
  120.       At  the  bottom  right  of  the   window   are   displayed   several
  121.   informations: the block address (relative to beginning, in hex), the  offset
  122.   in the block (in hex), the block number (relative to beginnin, in  decimal),
  123.   and the block type. This last information is not significant unless you edit
  124.   a DOS device. When block contents has been modified but not written, a  star
  125.   ("*") is displayed at the right of the first line. When  block  checksum  is
  126.   valid, a "V" character is displayed at the right of the  second  line  (this
  127.   information is not significant unless you edit a DOS device).
  128.  
  129.       When the window is opened, the first    block  is  displayed  and  the
  130.   cursor is on the first  character  of  the  right  part.  The  corresponding
  131.   position in the left part is showed by a display in a different  color.  You
  132.   can move the cursor whith the arrow  keys.  To  switch  between  a  part  to
  133.   another (left to right or right to left) just press the tabulation key.  You
  134.   can also move anywhere you want using the mouse. To modify data,  just  type
  135.   in the new datas over the old ones. In the left part, only "0" to  "9",  "a"
  136.   to "f" and "A" to "F" characters are allowed. AZap keep in mind the 32  last
  137.   changes: as long as you have not moved to another block you can  undo  these
  138.   changes with the escape key. The following keys are also accepted:
  139.  
  140.       ctrl-up      go to first block
  141.       ctrl-down      go to last block
  142.       ctrl-left      go to previous block
  143.       ctrl-right      do to next block
  144.       shift-up      go to first line
  145.       shift-down      go to last line
  146.       shift-left      go to first byte of the line
  147.       shift-right      go to last byte of the line
  148.  
  149.       The buttons at the bottom of the window allow (from left  to  right)
  150.   to go to the first block, to go to the previous block, to write the changes,
  151.   to go to the next block, to go to the last block,  and  to  go  to  a  given
  152.   address. In this last case, a  requester  appears,  so  you  can  enter  the
  153.   address to go. Use the following syntax:
  154.  
  155.       nbr      jump at address 'nbr'
  156.       §nbr      jump at block 'nbr'
  157.       @nbr      jump at address found by reading the long word at address
  158.           'nbr' (when editing memory only)
  159.       #nbr      jump to the memory area number 'nbr' (when editing memory
  160.           only)
  161.  
  162.   The address  may  be    an  expression,  whose    syntax    is  described  in  the
  163.   "Expressions_syntax" section. Be aware that if you  move  to  another  block
  164.   without writing the changes made to the current block, all changes  will  be
  165.   lost !
  166.  
  167.       To close the edit window, just click on the  close  gadget.  If  the
  168.   block has been modified but not saved, you will be asked  for  confirmation.
  169.   The program stops when the last edit window is closed.
  170.  
  171. The_Project_menu
  172.  
  173.       Open file...
  174.       Opens a new window to edit a file. A file requester will appear,
  175.       so you can select the file to edit.  A  memory  window  will    be
  176.       opened if you select "RAM:", or a device window if you select  a
  177.       device (like "DH0:")
  178.  
  179.       Open memory
  180.       Opens a new window to edit memory.
  181.  
  182.       Open device
  183.       Use the sub-menu items to select the device to edit. AZap  opens
  184.       a new window to edit this device.
  185.  
  186.       Palette...
  187.       A palette requester appears, so you can modify screen's  colors.
  188.  
  189.       Save prefs
  190.       Save configuration: screen's colors and font. The options of the
  191.       current  window  are    also  saved  as   default   options.   The
  192.       configuration file is "S:AZap.config".
  193.  
  194.       About...
  195.       Displays informations about the program.
  196.  
  197.       Quit
  198.       Ends program execution. You will be asked for confirmation.
  199.  
  200. The_Edit_menu
  201.  
  202.       Help...
  203.       Displays cursor keys usage with CTRL and SHIFT.
  204.  
  205.       Undo all
  206.       Read current block to undo all changes not saved yet.
  207.  
  208.       Jump back
  209.       Each time you move to  another  block  with  the  "go  to  first
  210.       block", "go to last block" or "GOTO" buttons, the  old  position
  211.       is kept in memory. This command allows  to  jump  back  to  this
  212.       position. The old position  is  also    kept  when  you  use  this
  213.       command, so you can easely toggle between two blocks.
  214.  
  215.       Next block
  216.       When editing a DOS device, this command allows you to go  either
  217.       to the first data block (if the current block is a file  header)
  218.       or to the next block (if the current block is a data block of  a
  219.       OFS disk).
  220.  
  221.       Parent block
  222.       When editing a DOS device and the current block is a file header
  223.       or a directory, this command allows  you  to    go  the  directory
  224.       block corresponding to the parent  directory    of  this  file    or
  225.       directory.
  226.  
  227.       Root block
  228.       When editing a DOS device, this command allows you to go to  the
  229.       root block of this device.
  230.  
  231.       Header block
  232.       When editing a DOS device, this command allows you to go to  the
  233.       next header block.
  234.  
  235.       When you use one of these four commands, the old position is kept in
  236.       memory for the "Jump back" command.
  237.  
  238. The_Tools_menu
  239.  
  240.       Infos
  241.       Displays  some   informations   about   the    file/memory/device
  242.       currently edited.
  243.  
  244.       Examine
  245.       When editing a DOS device, and if the current block is a  header
  246.       block, this command  displays  what  would  have  displayed  the
  247.       "Info" command on the corresponding file or directory.
  248.  
  249.       Print...
  250.       Prints a number of blocks starting from  the    current  block.  A
  251.       requester appears so you can specify another    output    file  that
  252.       "PRT:" (the printer). Then AZap  will  ask  you  the  number  of
  253.       blocks to print.
  254.  
  255.       Convert
  256.       A new window is opened, with four gadgets  that  enable  you    to
  257.       make convertions between binary, decimal, hexadecimal and ASCII.
  258.       Any value entered, either an expression  for    "BIN",  "DEC"  and
  259.       "HEX" gadgets, or  a  character  string  for  "ASC"  gadget,  is
  260.       converted in the other units.  You  don't  have  to  close  this
  261.       window to continue editing.
  262.  
  263.       Save block
  264.       Save a number of blocks starting from the current block. A  file
  265.       requester appears so you can specify the file where to save  the
  266.       blocks. Then AZap will ask you the number of blocks to save.
  267.  
  268.       Fill block...
  269.       Sets all bytes of  the  current  block  to  the  same  value.  A
  270.       requester appears so you can enter a value: either 'c'  to  fill
  271.       with the "c" character or a number (ASCII code of the  character
  272.       to use, prefixed by "0x" for an hexadecimal value).
  273.  
  274. The_Search_menu
  275.  
  276.       Search...
  277.       Searchs for a string or a hexadecimal value. A requester appears
  278.       so you can enter the value to  search  :  either  a  hexadecimal
  279.       value (prefixed by "0x", take care to enter an  even  number  of
  280.       digits) or a character string (ASCII search). To search a string
  281.       beginning with "0x", put all the string between double quotes.
  282.  
  283.       Search text... Searchs for a string of  printable  characters.  This
  284.       may be useful, for exemple, to locate a text area.  A  requester
  285.       appears so you can enter the minimal length  to  search  for.  A
  286.       value lower than 4 is generally not very interesting.
  287.  
  288.       Search next
  289.       Continue last search starting from current position.
  290.  
  291.       For all searchs, AZap move to the position  where  an  occurence    is
  292.       found, or the screen flashes.  The  previous  position  is  kept    in
  293.       memory for the "Jump back" function (see  "The_Edit_menu"  section).
  294.       You can abort a search, and AZap will find  a  string  laid  on  two
  295.       consecutives blocks.
  296.  
  297.       Search file
  298.       Goes strait to the header of a given file or directory.  A  file
  299.       requester appears, so you can select the file.  AZap    will  then
  300.       open a new device window for the corresponding device, and  show
  301.       the header block of the file.
  302.  
  303. The_Options_menu
  304.  
  305.       Take care that options are "locale" to a window : if you change  the
  306.   options of a window, the others windows won't be affected. When you  open  a
  307.   new window, it takes the options of the current window.
  308.  
  309.       Checksum
  310.       Specifies when AZap must update block checksum (used  only  when
  311.       editing a DOS device). Choices are : "always" (update for  *ALL*
  312.       blocks), "Ask if" (you will be asked for), "Boot  blocks"  (only
  313.       for 0 and 1 blocks) and "Automatic" (only if checksum was  valid
  314.       when reading block).
  315.  
  316.       Auto save
  317.       AZap will automatically save any modified block as soon  as  you
  318.       will ask to move to another block.
  319.  
  320.       Read only
  321.       You won't be allowed to modified data.
  322.  
  323.       lwr = UPR
  324.       Specifies if lower case and upper  case  characters  are  to    be
  325.       distinguished when making an ASCII search.
  326.  
  327.       Backup copy
  328.       Specifies if AZap must make a backup copy of    edited    files.    If
  329.       selected, at the next write attempt a requester will    appear    so
  330.       you can enter the name of the copy to  create.  AZap    will  then
  331.       make a copy of the file before recording  your  changes.  If    an
  332.       error occurs during the copy, the requester will  come  back    so
  333.       you can specify another name.  If  you  click  on  the  "Cancel"
  334.       gadget, no copy will be made but your changes will  be  recorded
  335.       anyway.
  336.  
  337. Expressions_syntax
  338.  
  339.       AZap is able to compute integer expressions. Default base is decimal
  340.   for addresses ("GOTO" gadget) or the  base  corresponding  to  the  selected
  341.   gadget in the convertion window. Base may be specified  with    "%"  (binary),
  342.   "#" (decimal), and "$" or "0x" (hexa) before  any  number.  Valid  operators
  343.   are :
  344.  
  345.       +      addition
  346.       -      subtraction
  347.       |      logical "or"
  348.       &      logical "and"
  349.       *      multiplication
  350.       /      integral division
  351.       %      reminder of integral division
  352.       <      shift left
  353.       >      shift right
  354.  
  355.   By default, "*", "/", "%", "<" and ">" operators have  higher  priority  but
  356.   you may use parenthesis. If there is a syntax error in  an  expression,  its
  357.   result will be set to -1.
  358.  
  359. Important_notes
  360.  
  361.       When starting to run, AZap read the ExecBase structure to  know  you
  362.   memory configuration. Only memory areas defined is memory  management  lists
  363.   may be edited. Except when searching, these areas are considered as adjacent
  364.   and AZap will move automatically  from  an  area  to    another.  The  "Infos"
  365.   command (see "The_Tools_menu" section) displays the addresses of all  areas.
  366.   Reading and writing memory is done after having disabled task switching,  in
  367.   order to avoid conflicts.
  368.  
  369.       AZap can recognize the type of the device you edit. Some  operations
  370.   ("next block", "parent block" and "root block", see "The_Edit_menu" section)
  371.   are disabled on  non    AmigaDOS  devices,  but  don't  forget  to  check  the
  372.   "Checksum" option. AZap knows about OFS (Old File System) and FFS (Fast File
  373.   System) and handle both file systems.
  374.  
  375. History
  376.  
  377.       This program was developped on an  Amiga  3000  UNIX-1  (6  Mb  RAM,
  378.   internal HD disk drive, internal hard disk of 100 Mb, external SyQuest drive
  379.   of 88 Mb, external floppy disk drive, 1960 monitor and Star LC24-10 printer)
  380.   connected by a null-modem cable to an A500 with 1 Mb RAM.
  381.       AZap was written almost in  C  language,  and  compiled  with  SAS/C
  382.   5.10b. DPaint IV (from Electronic Arts), SID2 (by Tim Martin), and  DME  (by
  383.   Matt Dillon) were very useful too.
  384.  
  385.   v1.00   14-Oct-92, 36084 bytes (Fish #759)
  386.       o First released version
  387.  
  388.   v1.01   16-Oct-92, 36084 bytes
  389.       o Bug fixed: didn't worked if default public screen  was  less  than
  390.         648 pixels wide.
  391.  
  392.   v1.10   15-Nov-92, 36960 bytes
  393.       o Added "Header block" and "Examine" functions
  394.       o After a file request, open a memory window if "RAM:" was selected,
  395.         or a device window if a device name was selected (e.g. "DH0:")
  396.  
  397.   v1.11   21-Nov-92, 36976 bytes
  398.       o Bug fixed: the "§n" form in the "GOTO" function wasn't  understood
  399.  
  400.   v1.20   25-Dec-92, 40000 bytes
  401.       o Compiled with SAS/C 6.1
  402.       o Added "Search file" function
  403.       o The requester for the "GOTO"  function  displays  the  last  value
  404.         entered
  405.       o If a string search fails, displays a message "foo not found"
  406.       o Devices can be named by their logical names (in command  line  and
  407.         file request, except RAM:)
  408.  
  409.   v1.30   02-Jan-93, 40612 bytes
  410.       o Added "Save block" function
  411.       o The "Print..." function ask for the number of blocks to print
  412.       o The "Infos" functions displays disk type (OFS/FFS/NDOS)
  413.       o Search functions put together in a new menu
  414.       o A few bugs fixed in default font and WorkBench screen handling
  415.  
  416.   v2.00   07-Feb-93, 42116 bytes
  417.       o Compiled with SAS/C 6.2
  418.       o Fully localized
  419.  
  420.   v2.01   21-Feb-93, 41768 bytes
  421.       o Better handling of file requester
  422.       o A few bugs fixed in window options handling
  423.  
  424.   v2.02   13-Mar-93, 42264 bytes
  425.       o No more gurus with a 68000 (some pointeurs were not aligned)
  426.       o Detach itself from CLI again
  427.       o The "About" window has a closing gadget
  428.  
  429.   v2.03   15-Apr-93, 42292 bytes
  430.       o A few bug fixed in expression computation
  431.       o Bug fixed: the "modified block" flag was  not  always  reset  when
  432.         moving to another block
  433.  
  434.   v2.04   24-Apr-93, 42468 bytes
  435.       o Show files pathname in window's title and "info" window
  436.       o Recognize all OS 3.0 filesystems
  437.       o A few bugs fixed in menus handling
  438.  
  439.  
  440.  
  441.